package com.yxw.yx_hotel.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

@Data
@ApiModel(value = "UserAccountVO", description = "登录账号详情列表vo")
public class UserAccountVO implements Serializable {

    @ApiModelProperty(value="id")
    private Long userId;

    @ApiModelProperty(value="部门名称")
    private String deptName;

    @ApiModelProperty(value="岗位名称")
    private String postName;

    @ApiModelProperty(value="角色名称")
    private String roleName;

    @ApiModelProperty(value="手机号")
    private String mobilePhone;

    @ApiModelProperty(value="登录账号")
    private String userNum;

    @ApiModelProperty(value="用户状态(0：禁用 1：启用)")
    private Integer userStatus;

    @ApiModelProperty(value="用户上级user_id")
    private Long parentUserId;

    @ApiModelProperty(value="账号名称")
    private String userName;

    @ApiModelProperty(value="备注")
    private String remark;

    @ApiModelProperty(value="创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    @ApiModelProperty(value="更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    @ApiModelProperty(value="类型 1:租户 2：SAAS管理员 3：租户子账户")
    private Integer userType;

    @ApiModelProperty(value="租户ID")
    private Long tenantId;

    @ApiModelProperty(value="创建人名称")
    private String createUserName;

    /**
     * 部门ID
     */
    @ApiModelProperty(value = "部门ID")
    private Long deptId;

    /**
     * 岗位ID
     */
    @ApiModelProperty(value = "岗位ID")
    private Long postId;

    /**
     * 角色ID
     */
    @ApiModelProperty(value = "角色ID")
    private Long roleId;

    /**
     * 登录密码
     */
    @ApiModelProperty(value="登录密码")
    private String password;
}
